1.4.3 Transformation Subject

When no subexpression is selected, transformations are applied to the entire expression. But when a subexpression is selected, transformations are applied just to the subexpression. To unify these two different ways of establishing the target of transformation, the term “subject” is used to identify the part of an expression to which a transformation is applied. The subject of a transformation is the selection or, if no selection is present, the entire expression. See §3.1 for more detail on selection.

Simplify (§3.2.2), Distribute (§3.2.3) and Factor (§3.2.4) have special modes for certain subjects. For example, if the subject is a derivative or an integral, Simplify replaces it with its symbolic differentiation or integration. If the subject consists of a generator with constant limits, Distribute expands the generator by cloning the terms and introducing appropriate operators. This bimodal behaviour condenses the user interface by accommodating both simple and specific transformations. Simple transformations can be applied to subexpressions within major constructs and specific transformations can be applied to the same constructs without requiring special action items for the specific transformations.

The straight arrows and are used to rearrange an expression by changing the position of the subject within the expression. For a given subject, the arrow buttons move the subexpression relative to the adjacent operators, subject to the algebraic constraints of the expression (§3.2.1).